function object(o) {
    function F() {}
    F.prototype = o
    return new F()
}
let person = {
    name: 'zzy',
    height: 188,
    colors: [1, 2, 3, 4]
}

let p1 = object(person)
console.log(p1);
p1.name = 'dlwlrma'
p1.height = 1000
// 注意下面二者的区别
// p1.colors.push(5) // person变
// p1.colors = 10 // person不变,因为是给p1这个对象自己赋值一个新的属性,跟prototype无关
console.log(p1);
console.log(person);
// 适用于你想在一个已有对象的基础上，创建一个新对象。
// 与Object.create一样